package com.wzdigit.wms.basic.domain.inv;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.wzdigit.framework.orm.model.BasicDomain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 库存冻结/解冻单表头
 * </p>
 *
 * @author 
 * @since 2021-07-20
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("WMS_HOLD_HEADER")
@KeySequence(value = "WMS_HOLD_HEADER_SEQ", clazz = Integer.class)
public class HoldHeader extends BasicDomain {

    private static final long serialVersionUID = 1L;

    /**
     * 冻结/解冻单表头ID
     */
    @TableId(value = "HOLD_HEADER_ID", type = IdType.INPUT)
    private Integer holdHeaderId;

    /**
     * 冻结/解冻单号
     */
    @TableField("HOLD_NO")
    private String holdNo;

    /**
     * H01	冻结单
H02	解冻单
     */
    @TableField("HOLD_TYPE")
    private String holdType;

    /**
     * 货主，客户主数据中 客户类型=货主，取客户ID
     */
    @TableField("OWNER")
    private Integer owner;

    /**
     * 冻结/解冻原因
     */
    @TableField("HOLD_CODE")
    private String holdCode;

    /**
     * 冻结/解冻原因描述
     */
    @TableField("HOLD_REASON")
    private String holdReason;

    /**
     * 冻结/解冻方式:
H01_1	按送货单
H01_2	按检验单
H01_3	按料号
H01_4	按批次
H02_1	按冻结单
     */
    @TableField("HOLD_WAY")
    private String holdWay;

    /**
     * 冻结单参考信息1
     */
    @TableField("HOLD_REF1")
    private String holdRef1;

    /**
     * 冻结单参考信息1
     */
    @TableField("HOLD_REF2")
    private String holdRef2;

    /**
     * 冻结单参考信息1
     */
    @TableField("HOLD_REF3")
    private String holdRef3;

    /**
     * 冻结单参考信息1
     */
    @TableField("HOLD_REF4")
    private String holdRef4;

    /**
     * 冻结单参考信息1
     */
    @TableField("HOLD_REF5")
    private String holdRef5;

    /**
     * 用户自定义字段1
     */
    @TableField("UDF1")
    private String udf1;

    /**
     * 用户自定义字段2
     */
    @TableField("UDF2")
    private String udf2;

    /**
     * 用户自定义字段3
     */
    @TableField("UDF3")
    private String udf3;

    /**
     * 用户自定义字段4
     */
    @TableField("UDF4")
    private String udf4;

    /**
     * 用户自定义字段5
     */
    @TableField("UDF5")
    private String udf5;

    /**
     * 0	已废弃
1	新建
2	已审核
3	进行中
4	已完成
     */
    @TableField("STATUS")
    private Integer status;

    /**
     * 备注
     */
    @TableField("COMMENTS")
    private String comments;

    /**
     * 修改人
     */
    @TableField("APPROVE_USER")
    private String approveUser;

    /**
     * 修改时间
     */
    @TableField("APPROVE_TIME")
    private Date approveTime;
}
